package leetcode_700;

/**
 *@author 周杨
 *MaxAreaOfIsland_695 判断一个0和1矩阵里 岛的最大延伸面积
 *describe:深度优先搜索 AC 23%
 *2018年10月9日 下午3:14:44
 */
public class MaxAreaOfIsland_695 {
	int res=0;
	int temp=0;
	public int maxAreaOfIsland(int[][] grid) {
        for(int i=0;i<grid.length;++i)
        	for(int j=0;j<grid[0].length;++j) {
        		if(grid[i][j]==1) {
        			temp=0;
        			help(i,j,grid);
        		}
        	}
        return this.res;
    }
	private void help(int i, int j,int[][]grid) {
		if(i<0||i==grid.length||j<0||j==grid[0].length) {
			return ;
		}
		if(grid[i][j]==1) {
			temp++;
			this.res=Math.max(res, temp);
			grid[i][j]=0;//表示已经走过了
			help(i+1,j,grid);
			help(i-1,j,grid);
			help(i,j+1,grid);
			help(i,j-1,grid);
		}
	}
}
